using System;
using ns27;
using Triton.Game.Mono;

namespace Triton.Game.Mapping
{
	[Attribute38("TextUtils")]
	public class TextUtils : MonoClass
	{
		public static int DEFAULT_STRING_BUILDER_CAPACITY_FUDGE => MonoClass.smethod_6<int>(TritonHs.MainAssemblyPath, "", "TextUtils", "DEFAULT_STRING_BUILDER_CAPACITY_FUDGE");

		public TextUtils(IntPtr address, string className)
			: base(address, className)
		{
		}

		public TextUtils(IntPtr address)
			: this(address, "TextUtils")
		{
		}

		public static string DecodeWhitespaces(string text)
		{
			return MonoClass.smethod_12(TritonHs.MainAssemblyPath, "", "TextUtils", "DecodeWhitespaces", text);
		}

		public static string EncodeWhitespaces(string text)
		{
			return MonoClass.smethod_12(TritonHs.MainAssemblyPath, "", "TextUtils", "EncodeWhitespaces", text);
		}

		public static int CountCharInString(string s, char c)
		{
			return MonoClass.smethod_14<int>(TritonHs.MainAssemblyPath, "", "TextUtils", "CountCharInString", new object[2] { s, c });
		}

		public static string Slice(string str, int start, int end)
		{
			return MonoClass.smethod_13(TritonHs.MainAssemblyPath, "", "TextUtils", "Slice", new Class276.Enum20[3]
			{
				Class276.Enum20.String,
				Class276.Enum20.I4,
				Class276.Enum20.I4
			}, str, start, end);
		}

		public static string Slice(string str, int start)
		{
			return MonoClass.smethod_13(TritonHs.MainAssemblyPath, "", "TextUtils", "Slice", new Class276.Enum20[2]
			{
				Class276.Enum20.String,
				Class276.Enum20.I4
			}, str, start);
		}

		public static string TransformCardText(Entity entity, string text)
		{
			return MonoClass.smethod_13(TritonHs.MainAssemblyPath, "", "TextUtils", "TransformCardText", new Class276.Enum20[2]
			{
				Class276.Enum20.Class,
				Class276.Enum20.String
			}, entity, text);
		}

		public static string TransformCardText(string text)
		{
			return MonoClass.smethod_13(TritonHs.MainAssemblyPath, "", "TextUtils", "TransformCardText", new Class276.Enum20[1] { Class276.Enum20.String }, text);
		}

		public static string TransformCardText(int damageBonus, int damageBonusDouble, int healingDouble, string powersText)
		{
			return MonoClass.smethod_13(TritonHs.MainAssemblyPath, "", "TextUtils", "TransformCardText", new Class276.Enum20[4]
			{
				Class276.Enum20.I4,
				Class276.Enum20.I4,
				Class276.Enum20.I4,
				Class276.Enum20.String
			}, damageBonus, damageBonusDouble, healingDouble, powersText);
		}

		public static string ToHexString(string str)
		{
			return MonoClass.smethod_13(TritonHs.MainAssemblyPath, "", "TextUtils", "ToHexString", new Class276.Enum20[1] { Class276.Enum20.String }, str);
		}

		public static string FromHexString(string str)
		{
			return MonoClass.smethod_12(TritonHs.MainAssemblyPath, "", "TextUtils", "FromHexString", str);
		}

		public static int GetHexValue(char hex)
		{
			return MonoClass.smethod_14<int>(TritonHs.MainAssemblyPath, "", "TextUtils", "GetHexValue", new object[1] { hex });
		}

		public static bool HasBonusDamage(string powersText)
		{
			return MonoClass.smethod_14<bool>(TritonHs.MainAssemblyPath, "", "TextUtils", "HasBonusDamage", new object[1] { powersText });
		}

		public static string TransformCardTextImpl(int damageBonus, int damageBonusDouble, int healingDouble, string powersText)
		{
			return MonoClass.smethod_12(TritonHs.MainAssemblyPath, "", "TextUtils", "TransformCardTextImpl", damageBonus, damageBonusDouble, healingDouble, powersText);
		}
	}
}
